//
// EpollClientSocket.h
//
// $Id: //poco/1.4/Net/include/Poco/Net/EpollClientSocket.h#1 $
//
// Library: Net
// Package: TCPServer
// Module:  EpollClientSocket
//
// Definition of the EpollClientSocket class.
//
// Copyright (c) 2005-2006, Applied Informatics Software Engineering GmbH.
// and Contributors.
//
// SPDX-License-Identifier:	BSL-1.0
//


#ifndef Net_EpollClientSocket_INCLUDED
#define Net_EpollClientSocket_INCLUDED


#include "Poco/Net/Net.h"
#include "Poco/Runnable.h"


namespace Poco {
namespace Net {


class Net_API EpollClientSocket: public Poco::Runnable
	/// Derived classes must override the run() method
	/// (inherited from Runnable).
	///
	/// As soon as the run() method
	/// returns, the server connection object is destroyed but
	/// the connection is automatically closed.
	///
	/// A new EpollClientSocket object will be created for
	/// each new client connection that is accepted by
	/// EpollServer.
{
public:
	virtual ~EpollClientSocket()
	{}

	virtual void run() = 0;
		/// should be implemented

};


} } // namespace Poco::Net


#endif // Net_EpollClientSocket_INCLUDED
